#include<bits/stdc++.h>
using namespace std;

inline int read() {
    int x = 0, f = 1;
    char ch = getchar();
    while (ch < '0' || ch > '9') {
        if (ch == '-')
            f = -1;
        ch = getchar();
    }
    while (ch >= '0' && ch <= '9') {
        x = (x << 1) + (x << 3) + (ch ^ 48);
        ch = getchar();
    }
    return x * f;
}

int main() {
    int T = read();
    while (T--) {
        int n = read(), k = read();
        vector<int> v(n);
        for (int i = 0; i < n; ++i) {
            v[i] = read();
        }
        sort(v.begin(), v.end());
        cout << v[k - 1] << " ";
    }
    return 0;
}



//
//给你一个长度为n的序列，求序列中第k小数的多少。
//Input
//多组输入，第一行读入一个整数T表示有T组数据。
//每组数据占两行，第一行为两个整数n，k，表示数列长度和k。
//第二行为n个用空格隔开的整数。
//Output
//对于每组数据，输出它的第k小数是多少。
//每组数据之间用空格隔开
//Sample 1
//Inputcopy	Outputcopy
//2
//5 2
//1 4 2 3 4
//3 3
//3 2 1
//2
//3
////